The present invention relates to a magnetic disk drive and particularly to a technique for diagnosing error-correcting retries of the upper system from the magnetic disk drive.
There have been many patented techniques which diagnose magnetic disk drives by issuing commands and the like from the upper systems. They include highly flexible diagnosis methods. One known example is described in Japanese Patent Laid-Open No. 2002-189571. In this method, it is possible for the upper system to specify to the magnetic disk drive what failures are to stop the self-diagnosis if detected.
In addition, Japanese Patent Laid-Open No. 10-011227 describes a method which allows a diagnosis program on the upper system to be executed/controlled so as to perform write read test for every magnetic disk. This diagnosis capability covering all magnetic disks raises the reliability of the magnetic disk drive.
As for techniques for diagnosing the upper system from the magnetic disk drive, error-correcting retries of the upper system are conventionally verified by using a prepared disk drive which actually generates failures. In this case, preparing disk drives which generate all errors required by the upper system is not feasible since this needs tremendous man-hours.
As for logical pseudo failures, techniques which use simulators such as pseudo input and output devices are known. As described in Japanese Patent Laid-Open No. 5-73446 and No. 2002-132534, such a simulator provides pseudo execution of operations without using an actual device and can report pseudo logical errors required by the upper system. However, to verify various error-correcting retries of the actual upper system, not only what each error is but also how many times retry is to be done for the error are important. Uncertain composite errors each resulting from a combination of recoverable and unrecoverable failures must be simulated. Although composite errors can be composed logically even by a simulator, this requires tremendous man-hours and costs. In addition, since an actual device is not used, non-logical errors such as those due to failed components cannot be simulated.